//相关业务逻辑
$(function(){
	page.bind();
//	page.hiddenDiv();
	page.queryAllUser();
});

var pageuserId="";
var page={
		bind:function(){
			$("#querryUser").bind("click",function(){
				page.queryUser();
				$(".querryRoleDiv").show("slow");
			});
			
		   $("#querryAllUser").bind("click",function(){
			   page.queryAllUser();
			   $(".querryRoleDiv").show("slow");
		   });
			
			$("#setCheck").bind("click",function(){
				$("input[type='checkbox']").show("slow");
//				$(".setBtn").show("slow");
			});
			
			$("#addPermissionBtn").bind("click",function(){
				page.addRole();
			});
			
			$("#removePermissionBtn").bind("click",function(){
				page.removeRole();
			});
		},
		hiddenDiv:function(){
			$(".querryRoleDiv").hide();
//			$(".haveAndNoHanv").hide();
//			$(".setBtn").hide();
		},
		roleBind:function(){
			$(".roleNameA").bind("click",function(){
				var id=$(this).attr("id");
				pageuserId=id;
				page.getUserRole(id,1);
			});
			
			$(".setRole").bind("click",function(){
				var id=$(this).attr("id");
				pageuserId=id;
				page.getUserRole(id ,1);
//				$(".setBtn").show("slow");
			});
		},
		queryUser:function(){
			var nameOrPhone=$("#nameOrPhone").val();
			if(nameOrPhone==""){
				layAlert("请输入手机号或姓名");
				return false;
			}
			ajaxUtil.ajaxRuquest('user/querryUserByNameOrPhone',{"nameOrPhone":nameOrPhone},function(data){
				if(data==null || data.length<=0){
					$("#allRoleTbody").html("<tr><td colspan='3'>该条件下没有人员</td></tr>");
				}else{
					page.tableView(data);
				}
			});
		},
		queryAllUser:function(){
			ajaxUtil.ajaxRuquest('user/queryAllUser',null,function(data){
				if(data==null || data.length<=0){
					$("#allRoleTbody").html("<tr><td colspan='3'>该条件下没有人员</td></tr>");
				}else{
					page.tableView(data);
				}
			});
		},
		tableView:function(data){
			var html="";
			for(var i=0;i<data.length;i++){
				html+="<tr><td><a class='roleNameA'id='"+data[i].id+"'>"+data[i].userName+
				"</a></td><td>"+data[i].phone+
				"</td><td><a class='setRole' id='"+data[i].id+"'>设置</a></td></tr>";
			}
			$("#allRoleTbody").html(html);
			page.roleBind();
		},
		getUserRole:function(id,showOrHide){
			ajaxUtil.ajaxRuquest('permission/getUserRole',{'userId':id},function(data){
				console.log(data);
				var html="";
				if(data==null){
					$("#haveTable").html("<tr><td>还未设置角色</td></tr>")
				}else{
					page.viewPermission(data,'haveTable','haveCheck',showOrHide);
				}
			});
			
			ajaxUtil.ajaxRuquest('permission/getUserNoRole',{'userId':id},function(data){
				console.log(data);
				if(data==null){
					$("#noHaveTable").html("<tr><td>没有未设置角色</td></tr>")
				}else{
					page.viewPermission(data,'noHaveTable','noHaveCheck',showOrHide);
				}
			});
//			$(".haveAndNoHanv").show("slow");
//			$(".setBtn").hide("slow");
			$("#setUserRoleModal").modal("show");
		},
		viewPermission:function(data,id,name,showOrHide){
			var html="";
			for(var i=0;i<data.length;i++){
				html+="<tr><td><input  type='checkbox' name='"+name+"' value='"+data[i].id+"' />"+data[i].name+"</td></tr>";
			}
			$("#"+id).html(html);
			if(showOrHide==2){
				$("input[type='checkbox']").hide();
			}
		},
		addRole:function(){
			var permissionIdArray=new Array();
			$('input[name="noHaveCheck"]:checked').each(function(){  
				permissionIdArray.push($(this).val());//向数组中添加元素  
			}); 
			if(permissionIdArray.length<=0){
				layAlert("请选择要添加的角色");
				return false;
			}
			ajaxUtil.ajaxRuquest('permission/addUserRole',{'userId':pageuserId,'roleIdArray':JSON.stringify(permissionIdArray)},function(data){
				layer.msg(data,{icon:1});
				page.getUserRole(pageuserId,1);
			});
		},
		removeRole:function(){
			var permissionIdArray=new Array();
			$('input[name="haveCheck"]:checked').each(function(){  
				permissionIdArray.push($(this).val());//向数组中添加元素  
			}); 
			if(permissionIdArray.length<=0){
				layAlert("请选择要添加的角色");
				return false;
			}
			ajaxUtil.ajaxRuquest('permission/removeUserRole',{'userId':pageuserId,'roleIdArray':JSON.stringify(permissionIdArray)},function(data){
				layer.msg(data,{icon:1});
				page.getUserRole(pageuserId,1);
			});
		}
}







